import Dep from "./dep.js"
// cb是watcher收集的回调函数，这个函数主要负责更新dom
export default function Watcher(cb){
    // 备份cb函数
    this._cb = cb
    // 将watcher的实例，复制给dep。target，说明改数据被引用
    Dep.target = this
    // 执行cb回调函数，
    // cb种会发生vm。xx的属性读取，进而触发 defineReactive 中的get函数
    cb()
    Dep.target = null
}
// 数据更新的时候，dep通知watcher执行uodata方法，
// uptate会执行 循环执行watcher，执行_cb的回调

Watcher.prototype.update = function(){
    this._cb()
}